package me.lwn.auth.domain;

import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.Table;
import java.util.Date;

@Entity
@Table(name = "user")
public class User {

    @Id
    private String id;
    private String username;
    private String password;
    private String name;
    private String mobile;
    private String email;
    private Integer status;
    private String headImage;
    private String description;
    private Date crtTime;
    private String crtUser;
    private String crtHost;
    private String attr;
    private String cardId;
    private String weChat;
    private Integer isSuper;
    private Integer state;
    private String distinguishedName;
    private String regionCode;

    private Date credentialExpireDate;
    private Date accountExpireDate;
    private boolean accountLocked;
    private boolean enabled;

    /**
     *
     */
    public String getId() {
        return id;
    }

    /**
     *
     */
    public void setId(String id) {
        this.id = id;
    }

    /**
     *
     */
    public String getUsername() {
        return username;
    }

    /**
     *
     */
    public void setUsername(String username) {
        this.username = username;
    }

    /**
     * 密码
     */
    public String getPassword() {
        return password;
    }

    /**
     * 密码
     */
    public void setPassword(String password) {
        this.password = password;
    }

    /**
     * 名称
     */
    public String getName() {
        return name;
    }

    /**
     * 名称
     */
    public void setName(String name) {
        this.name = name;
    }

    /**
     * 手机号
     */
    public String getMobile() {
        return mobile;
    }

    /**
     * 手机号
     */
    public void setMobile(String mobile) {
        this.mobile = mobile;
    }

    /**
     * 邮箱
     */
    public String getEmail() {
        return email;
    }

    /**
     * 邮箱
     */
    public void setEmail(String email) {
        this.email = email;
    }

    /**
     * 状态
     */
    public Integer getStatus() {
        return status;
    }

    /**
     * 状态
     */
    public void setStatus(Integer status) {
        this.status = status;
    }

    /**
     * 头像
     */
    public String getHeadImage() {
        return headImage;
    }

    /**
     * 头像
     */
    public void setHeadImage(String headImage) {
        this.headImage = headImage;
    }

    /**
     * 描述
     */
    public String getDescription() {
        return description;
    }

    /**
     * 描述
     */
    public void setDescription(String description) {
        this.description = description;
    }

    /**
     *
     */
    public Date getCrtTime() {
        return crtTime;
    }

    /**
     *
     */
    public void setCrtTime(Date crtTime) {
        this.crtTime = crtTime;
    }

    /**
     * 添加者
     */
    public String getCrtUser() {
        return crtUser;
    }

    /**
     * 添加者
     */
    public void setCrtUser(String crtUser) {
        this.crtUser = crtUser;
    }

    /**
     * IP
     */
    public String getCrtHost() {
        return crtHost;
    }

    /**
     * IP
     */
    public void setCrtHost(String crtHost) {
        this.crtHost = crtHost;
    }

    /**
     * 预留字段
     */
    public String getAttr() {
        return attr;
    }

    /**
     * 预留字段
     */
    public void setAttr(String attr) {
        this.attr = attr;
    }

    /**
     * 卡号
     */
    public String getCardId() {
        return cardId;
    }

    /**
     * 卡号
     */
    public void setCardId(String cardId) {
        this.cardId = cardId;
    }

    /**
     * 微信号
     */
    public String getWeChat() {
        return weChat;
    }

    /**
     * 微信号
     */
    public void setWeChat(String weChat) {
        this.weChat = weChat;
    }

    /**
     *
     */
    public Integer getIsSuper() {
        return isSuper;
    }

    /**
     *
     */
    public void setIsSuper(Integer isSuper) {
        this.isSuper = isSuper;
    }

    /**
     *
     */
    public Integer getState() {
        return state;
    }

    /**
     *
     */
    public void setState(Integer state) {
        this.state = state;
    }

    /**
     * ldap路径
     */
    public String getDistinguishedName() {
        return distinguishedName;
    }

    /**
     * ldap路径
     */
    public void setDistinguishedName(String distinguishedName) {
        this.distinguishedName = distinguishedName;
    }

    /**
     * 用户所在区域code
     */
    public String getRegionCode() {
        return regionCode;
    }

    /**
     * 用户所在区域code
     */
    public void setRegionCode(String regionCode) {
        this.regionCode = regionCode;
    }

    public Date getCredentialExpireDate() {
        return credentialExpireDate;
    }

    public void setCredentialExpireDate(Date credentialExpireDate) {
        this.credentialExpireDate = credentialExpireDate;
    }

    public Date getAccountExpireDate() {
        return accountExpireDate;
    }

    public void setAccountExpireDate(Date accountExpireDate) {
        this.accountExpireDate = accountExpireDate;
    }

    public boolean isAccountLocked() {
        return accountLocked;
    }

    public void setAccountLocked(boolean accountLocked) {
        this.accountLocked = accountLocked;
    }

    public boolean isEnabled() {
        return enabled;
    }

    public void setEnabled(boolean enabled) {
        this.enabled = enabled;
    }
}